home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1997 January: Mac OS SDK / Dev.CD Jan 97 SDK2.toast / Development Kits (Disc 2) / OpenDoc / Developer Documentation / Recipes, Tech Notes & Articles / Tech Notes / Utilities Documentation / •Utilities Summary next >
Encoding:
Text File  |  1995-11-08  |  6.6 KB  |  56 lines  |  [TEXT/ttxt]

  1. Brief Descriptions of the OpenDoc Utilities
  2.  8 November 1995  •  Copyright ©1995 Apple Computer, Inc.
  3.  
  4. This document describes very briefly what each of the utilities supplied with OpenDoc does. Full documentation can be found in the Utilities Documentation folder of the Technical Notes folder.
  5.  
  6. Note that all of the utilities are supplied on an as-is basis: they're useful, and we in fact use them in OpenDoc and in part editors we write, but we do not QA them as rigorously as we do OpenDoc itself, and they are not part of the official OpenDoc API. Source code is provided, so if you find a bug in a utility or want to extend its functionality you are free to do so; and if you want to write your own code but just need to figure out how we did something, you can use the utility sources as reference and sample code.
  7.  
  8. Not all the utilities are commonly used by part editors. Those that are have been marked with a • in the list below. The downright ubiquitous ones have two ••s.
  9.  
  10. AltPoint — Redefines ODPoint and ODRect as C++ structs with many useful constructors, conversion operators and methods. ••
  11. AltPoly — Redefines ODPolygon as a C++ struct with many useful constructors, conversion operators and methods. ••
  12. BArray — Utilities for working with ODByteArrays, which are System Object Model™ (SOM) “sequence of octet” structures that point to variable-size blocks of memory.
  13. Crawl — Allows you to capture and display stack crawls for debugging purposes. (Not often called directly by parts, but used internally by Except and ODDebug.) •
  14. DictList — A simple dictionary class that maps arbitrary keys to arbitrary values.
  15. DlogUtil — A collection of utilities to help display dialogs; various dialog filterProcs; and a function to create an ODIText (international text structure) from a 'STR' resource. •
  16. DocUtils — Functions used to manipulate documents and drafts.
  17. EditrSet — Collection class for storing sets of part editor IDs.
  18. Except — A catch/throw style exception handling system. Most of the other utilities use this utility, and may throw exceptions, so your code needs to use it too if you use those utilities. ••
  19. FlipEnd — Routines for converting between big-endian (most significant byte first) and little-endian (least significant byte first) data values. Used for cross-platform data storage.
  20. FocusLib — Sets up the QuickDraw environment for drawing into a facet. Also includes utilities for PostScript® printing. ••
  21. HshTbl — A hash table class.
  22. InfoUtil — Getters and setters for user visible properties (shown in the Part Info and Document Info dialogs) of parts and frames, including support functions to get the size, ID, creation date and modification date and modification username of persistent objects.
  23. ISOStr — Utilities for working with ISO strings, which are null-terminated strings exactly like the usual C strings. These routines are mostly identical to ANSI functions like strlen and strcpy.
  24. IText — Utilities for working with International Text structures, which contain a variable-size text buffer as well as Macintosh script and language codes. ••
  25. LineOps — Geometric functions for working with lines — computing intersections, offsetting them, et cetera.
  26. LinkList — A simple linked-list class.
  27. MemDebg — Debugging utilities for the OpenDoc memory manager. These let you do things like find out how much memory is being used, examine every block in a heap, test whether pointers point to valid blocks, and turn memory testing on and off. This can be very useful in debugging code that trashes memory. Only available in debugging builds of OpenDoc.
  28. MemMgr — The direct API to the OpenDoc memory manager. This is the recommended memory manager for use by OpenDoc part editors, since it has low overhead and does not use up application heap space.
  29. Node — A simple tree class.
  30. ODDebug — Debugging utilities, for assertions, safe type-casting, and logging. •
  31. ODDesUtl — Utilities for working with OpenDoc semantic event (Apple Event) descriptors.
  32. ODMath — Fixed point math utilities with a cross-platform API.
  33. ODMemory — Memory allocation functions that use exception handling. These are just a wrapper around the OpenDoc memory manager API provided by MemMgr.h, but these routines will throw exceptions if they fail. ••
  34. ODNew — Definitions of global C++ operator new and operator delete, that use the memory allocators from ODMemory. ••
  35. ODNewObj — Utility routine for instantiating SOM objects by classname.
  36. ODUtils — Miscellaneous small utility functions and macros, such as ODDeleteObject and ODReleaseObject which delete/release an object and set your pointer to it to NULL to ensure that you don't keep a dangling reference. ••
  37. OpenHash — A hash table with “open” hashing, which supports deleting values while iterating over them.
  38. OrdColl — A simple ordered-collection class.
  39. PasclStr — Pascal string utilities. ••
  40. PlfmDef — Declares the ODQDGlobals macro which is used to access QuickDraw globals. Also defines macros like ODMethod which are used in C++ class declarations to avoid compiler specific syntax.
  41. PlfmFile — A wrapper class for Macintosh files, with a cross-platform API.
  42. PriortyQ — A simple priority-queue class. This is a data structure that keeps a sorted collection and allows very efficient access to the first (but only the first) element.
  43. SemtIntf.idl — An ODSemanticInterface subclass, ODCPlusSemanticInterface, that you can use to support scripting. It uses a C++ helper class, SIHelper. •
  44. SIHelper — A utility class for working with ODCPlusSemanticInterface. •
  45. SIHlpAbs —  A utility class for working with ODCPlusSemanticInterface. •
  46. SIHshTbl — A hash table used by SIHelper. •
  47. StdTypIO — Utilities to allow simpler manipulation of StorageUnits, and to read and write various commonly used data types (integers, ISOStrings, times, StorageUnitRefs, etc.) in a standard storage format. ••
  48. StorUtil — Storage Unit utilities that wrap the GetData and SetData methods, letting you pass in direct pointers to data buffers instead of an ODByteArray wrapper; this is like the DR1 API.
  49. StrHshTb — A hash table class that stores strings.
  50. TempIter — TempObj classes (see below) for OpenDoc iterators. Besides ensuring the deletion of the iterator, these include methods that simplify both the syntax and the generated code for iteration. •
  51. TempObj — C++ utilities for “smart” references to SOM objects, especially ref-counted objects, that automatically release or delete the object when the pointer goes out of scope to prevent memory leaks. •
  52. TransUtl — Data translation utilities.
  53. UseRsrcM — Utilities to access resources from your part editor's resource fork. ••
  54. WinUtils — Window utilities used when re-opening a window at document launch time, to access the window properties which are stored with the root frame of any persistently stored window. •
  55.  
  56.